A Novel Calibration Method for Gyro-Accelerometer Asynchronous Time in Foot-Mounted Pedestrian Navigation System

Pedestrian Navigation System (PNS) is one of the research focuses of indoor positioning in GNSS-denied environments based on the MEMS Inertial Measurement Unit (MIMU). However, in the foot-mounted pedestrian navigation system with MIMU or mobile phone as the main carrier, it is difficult to make the sampling time of gyros and accelerometers completely synchronous. The gyro-accelerometer asynchronous time affects the positioning of PNS. To solve this problem, a new error model of gyro-accelerometer asynchronous time is built. The effect of gyro-accelerometer asynchronous time on pedestrian navigation is analyzed. A filtering model is designed to calibrate the gyro-accelerometer asynchronous time, and a zero-velocity detection method based on the rate of attitude change is proposed. The indoor experiment shows that the gyro-accelerometer asynchronous time is estimated effectively, and the positioning accuracy of PNS is improved by the proposed method after compensating for the errors caused by gyro-accelerometer asynchronous time.


Introduction
Outdoor pedestrian positioning mainly relies on the Global Navigation Satellite System (GNSS). In indoor GNSS-denied environments, a pedestrian navigation system (PNS) is an important positioning method to locate a user's position [1,2]. There are two kinds of technical schemes for PNS: One is the active positioning method utilizing Ultra-Wideband (UWB) [3], Bluetooth [4], ZigBee [5], Wireless Fidelity (Wi-Fi) [6], etc. The other one is the passive positioning method utilizing the Strapdown Inertial Navigation System (SINS) based on three gyros and three accelerometers [7], which makes it realizable in terms of locating the user's position without any other external devices. A common method for the passive positioning method is to fix the MEMS Inertial Measurement Unit (MIMU) on the foot, which is also called foot-mounted pedestrian navigation system [8,9].
Limited by the low precision of MEMS inertial devices, the velocity and position of PNS will diverge rapidly over time [10]. To avoid the accumulation of velocity errors and position errors, the zero velocity updates (ZUPT) algorithm has been proposed and widely used. The velocity is approximately equal to zero when the foot touches the ground, which can be employed in a Kalman filter to correct the errors of PNS. Zero-velocity detection is one of the main factors affecting the correction effect of the ZUPT algorithm [11]. In reference [12], Barsocchi analyzed the gait characteristics and succeeded in extracting temporal gait parameters based on a sensorized footwear which contains a 3-axis gyro, a 3-axis accelerometer, a 3-axis magnetometer and five pressure sensors. References [13][14][15] present four commonly used zero-velocity detection methods which are named the stance hypothesis optimal detector, the acceleration moving variance detector, the acceleration foot-mounted pedestrian navigation system is more complex and intense. Such a highdynamic environment will increase the effect of gyro-accelerometer asynchronous time on pedestrian navigation. Therefore, the traditional calibration methods and error models of gyro-accelerometer asynchronous time in SINS cannot be employed in PNS. However, there are few references of gyro-accelerometer asynchronous time in PNS. In the footmounted pedestrian navigation system with MIMU or mobile phone as the main carrier, the gyro-accelerometer asynchronous time is likely to reach tens of milliseconds, and the gyro-accelerometer asynchronous time is changeable each time the system is turned on. Due to the gyro-accelerometer asynchronous time, the velocity error tends to be nonlinear. Therefore, the traditional error models of PNS are no longer suitable. Besides, the traditional zero-velocity detection methods which utilize gyros and accelerometers do not consider the gyro-accelerometer asynchronous time. If the sampling time of gyros and accelerometers is asynchronous, the traditional zero-velocity detection methods may lead to missing detection or false detection.
In order to solve the above problems and improve the positioning accuracy of pedestrian navigation, the gyro-accelerometer asynchronous time in PNS is studied in this paper. Compared with the known and used methodologies, this paper focuses on the calibration method of gyro-accelerometer asynchronous time in PNS which is never studied before. The proposed technology intends to provide a new way to improve the positioning accuracy of foot-mounted pedestrian navigation system in which the communication infrastructure is damaged when fire, earthquake or other emergency occurs. The main contributions in this paper can be summarized as follows: (1) A new model of gyro-accelerometer asynchronous time is built, and the effect of gyro-accelerometer asynchronous time on pedestrian navigation is analyzed. (2) A calibration method of gyro-accelerometer asynchronous time and a new zero-velocity detection method based on the rate of attitude change are proposed.
The remainder of this paper is organized as follows: Section 2 introduces the reference frame definitions. Section 3 builds an error model of gyro-accelerometer asynchronous time and analyzes the effect of gyro-accelerometer asynchronous time on pedestrian navigation. Section 4 designs a Kalman filter to calibrate the gyro-accelerometer asynchronous time and proposes a zero-velocity detection method based on the rate of attitude change. Section 5 shows the experiments and results. The discussion and conclusion are presented in Section 6.

The Reference Frame Definitions
The reference coordinate frames used in this paper are defined as follows: o i x i y i z i (i-frame): Earth-Centered Inertially Fixed (ECIF) orthogonal reference frame. o e x e y e z e (e-frame): Earth-Centered Earth-Fixed (ECEF) orthogonal reference frame. o h x h y h z h (h-frame): Horizontal orthogonal reference frame with X-axis and Y-axis in the local horizon.
o n x n y n z n (n-frame): Navigation orthogonal reference frame aligned with local East-North-Up geodetic axes.

Error Model of Gyro-Accelerometer Asynchronous Time
In the foot-mounted pedestrian navigation system, the MIMU rotates with the movement of foot. In theory, the gyro outputs and accelerometer outputs are both aligned with bframe, which is calculated by gyros. However, due to the gyro-accelerometer asynchronous time, the accelerometer outputs are aligned with b -frame instead of b-frame. Therefore, the coordinate frames aligned with gyro-sensitive axes and accelerometer-sensitive axes are no longer consistent. The angle errors between b-frame and b -frame can be written as: where θ, γ and ψ are the pitch angle, roll angle and yaw angle from b-frame to n-frame, θ , γ and ψ are the pitch angle, roll angle and yaw angle from b -frame to n-frame. Figure 1 shows the dynamic inconsistent error of the coordinate frame caused by gyroaccelerometer asynchronous time. If the gyro-accelerometer asynchronous time of three axes is different, b -frame is non-orthogonal. Since the three-axis MEMS accelerometer chip is used in PNS, it can be assumed that the three gyros and three accelerometers have the same characteristics of asynchronous time. That is, the three gyros and three accelerometers have the same asynchronous time. In this paper, f b denotes the accelerometer output vector in b -frame.f b denotes the measured specific force vector. In view of gyro-accelerometer asynchronous time, the specific force measurements are the accelerometer outputs in b -frame. Therefore, the measured specific force vector can be expressed as: where T is the projection of f b onto n-frame, and C b n is the transform matrix from n-frame to b -frame.
The measured specific force vector in n-frame can be written as: where C n b is the transform matrix from b-frame to n-frame. Therefore, the specific force error vector δ f n caused by gyro-accelerometer asynchronous time is: where In order to analyze the effect of gyro-accelerometer asynchronous time on pedestrian navigation conveniently and intuitively, the movement of foot is divided into three parts, including pitch motion, roll motion, and yaw motion. The effect of pitch motion on pedestrian navigation is analyzed as follows.
The gyro-accelerometer asynchronous time is denoted as τ, and the initial three-axis attitude vector is denoted as 0, 0, ψ 0 T . If the MIMU rotates around the pitch axis, Equation (2) can be rewritten as: Substituting Equation (5) into Equation (3),f n can be expressed as: For the convenience of analysis, it's assumed that people walk, go upstairs or go downstairs at normal speed. Then δθ, δγ and δψ can be considered as small angles. Therefore, δθ, δγ and δψ can be written as: where ω θ , ω γ and ω ψ are the angular velocities along pitch axis, roll axis, and azimuth axis respectively. Substituting Equation (7) into Equation (6),f n can be rewritten as: Compared with f n , the accelerometer measurement errors in n-frame can be expressed as: where δ f n = [δ f n E , δ f n N , δ f n U ] T denotes the accelerometer measurement error vector in n-frame. According to [28], the velocity error model is: where v n = v n E v n N v n U T andṽ n = ṽ n Eṽ n Nṽ n U T are the ideal velocity vector and calculated velocity vector in n-frame respectively, g n is the local gravity vector, ω n ie is the angular velocity vector of earth rotation and ω n en is the angular velocity vector of n-frame relative to earth. Therefore, the velocity error vector caused by gyro-accelerometer asynchronous time can be expressed as: where δv n = δv n E δv n N δv n U T denotes the velocity error vector.
Substituting Equation (9) into Equation (11), the velocity error vector can be rewritten as: According to Equation (12), the horizontal velocity error is: where the oritation is: arctan(−δv n E δv n N ) = ψ 0 . The vertical velocity error is: where f n // is the equivalent velocity along the forward direction of the people's movement. Similarly, f n ⊥ denotes the equivalent velocity that is perpendicular to the forward direction of the people's movement. f n ⊥ can be expressed as: Further, the latitude error, longitude error and height error caused by gyro-accelerometer asynchronous time can be written as follows respectively: where L, λ, and h are the ideal latitude, longitude and height respectively,L,λ, andh are the calculated latitude, longitude and height respectively, R M is the radius of curvature in meridian, and R N is the radius of curvature in prime vertical.

Effects of Gyro-Accelerometer Asynchronous Time on Pedestrian Navigation
According to Equation (12), the north velocity errors can be written as follows under the assumption of ψ = ψ 0 or ψ = ψ 0 + π: Equation (19) shows that the north velocity errors are opposite in opposite directions. It's indicated that the north velocity errors caused by gyro-accelerometer asynchronous time will cancel each other out in opposite directions. Further analysis shows that the gyro-accelerometer asynchronous time has the same effect on east velocity error.
According to Equation (13), the horizontal velocity error δv n h is related to τ, ω θ and f n U . Roughly, ω θ and f n U can be regarded as sinusoidal signals approximately with the same period. Therefore, the horizontal velocity error will be accumulated, resulting in the drift of horizontal velocity in the forward direction of people's movement.
Equation (14) shows that the vertical velocity error is related to τ, ω θ and f n // . Since f n // can be regarded as a sinusoidal signal approximately with the same period as ω θ . Therefore, the vertical velocity error will be accumulated continuously, resulting in the rapid divergence of height eventually.
Similarly, when the MIMU rotates around the roll axis or azimuth axis, the effect of gyro-accelerometer asynchronous time on pedestrian navigation is analyzed and summarized respectively, and the results are shown in Table 1.
As shown in Table 1, affected by gyro-accelerometer asynchronous time, when the MIMU rotates around the roll axis or azimuth axis, the north velocity errors or east velocity errors are opposite in opposite directions. It means that the horizontal position errors caused by gyro-accelerometer asynchronous time will cancel each other out in opposite directions. However, when the MIMU rotates around the roll axis, the vertical velocity error will be accumulated over time, leading to the rapid divergence of height eventually. The gyro-accelerometer asynchronous time makes no difference to the vertical velocity and height if the MIMU rotates around the azimuth axis.
In addition, Table 1 also shows the relationship between velocity errors and gyroaccelerometer asynchronous time, which provides a simple and convenient way to identify the parameter of gyro-accelerometer asynchronous time.  Table 2 shows the effect of gyro-accelerometer asynchronous time on velocity errors when the MIMU rotates around the pitch axis, roll axis, or azimuth axis. In practice, the MIMU rotates around three axes driven by foot. Therefore, it's necessary to consider the effect of pitch motion, roll motion, and yaw motion on pedestrian navigation comprehensively under different gaits. Since the MIMU mainly rotates around the pitch axis, it's reasonable to infer that the pitch motion is the main factor affecting velocity errors. Based on the above analysis, the major characteristics of velocity errors are summarized when people walk on flat ground, go upstairs, or go downstairs. The results are shown in Table 2. The horizontal velocity errors caused by gyro-accelerometer asynchronous time will cancel each other out when people walk on a closed-loop trajectory, while the horizontal velocity error will be accumulated with time when people walk on an open-loop trajectory, resulting in decreasing the horizontal positioning accuracy. The vertical velocity and height are mainly affected by pitch motion and roll motion. Since the MIMU rotates around the pitch axis and roll axis periodically, the vertical velocity error will be accumulated over time, leading to the rapid divergence of height eventually.

Simulation
In order to verify the correctness of the above analyses which are shown in Tables 1 and 2, a simulated experiment was carried out. The gyro-accelerometer asynchronous time is set to 10ms, and the designed trajectory is divided into three sorts as follows: 1. People go up to the second floor from the start, then take a walk around the hall counterclockwise. 2. People continue to go up to the third floor from the second floor, then take a walk around the hall counterclockwise. 3. people continue to go up to the fourth floor from the third floor, then take a walk around the hall counterclockwise, and go down to the first floor from point A finally. The simulated trajectory is shown in Figure 2. The yaw motion is modeled as a rotation around azimuth axis with an uniform angular velocity. The pitch motion and roll motion are modeled as periodic sinusoidal motions in one gait cycle: where θ m and γ m are the amplitudes of sinusoids, f step is the frequency corresponding to a gait cycle, and t is the working time. Figure 3 presents the velocity errors and position errors caused by gyro-accelerometer asynchronous time, by comparing the ideal velocity (position) with the calculated velocity (position). It shows that the velocity errors have obvious characteristics in different positions when people walk, go upstairs, or go downstairs, which meet the main characteristics described in Table 2. In addition, Figure 3b shows that the gyro-accelerometer asynchronous time has a great influence on the position, which decreases the positioning accuracy of PNS. The rapid divergence of height makes it difficult to confirm exactly which floor the person is on. Therefore, it is of great significance to calibrate the gyro-accelerometer asynchronous time and compensate for the velocity errors and position errors for improving the positioning accuracy of PNS.

A Calibration Method for Gyro-Accelerometer Asynchronous Time
Considering that the gyro-accelerometer asynchronous time is changeable, a calibration method for gyro-accelerometer asynchronous time is proposed in this chapter.

Error Model of Pedestrian Navigation System Based on Gyro-Accelerometer Asynchronous Time
In theory, the projection of f b onto n-frame can be written as f n = C n b f b . Considering gyro-accelerometer asynchronous time, misalignment angles, and bias errors of accelerometers, the measured specific force vector in n-frame can be expressed as: wheref where δ f b is the bias error vector of accelerometers,(·×) denotes the operation of skew symmetric matrix, φ is the attitude error vector. According to [27], the attitude error model is: where δω n ie ,δω n en and δω b ib are the error vectors of ω n ie , ω n en and ω b ib respectively, and ω b ib is the gyro output vector.
Ignoring the second-order small errors, Equation (21) can be rewritten as: where C b b is the transform matrix from b-frame to b -frame. The equivalent rotation vector from b-frame to b -frame is donated as δϑ which can be expressed as: where ω b nb is the ideal angular velocity vector. Therefore, C b b can be formed as follows by using Rodrigues rotation formula [29]: where M RV (·) is the function of equivalent rotation vector. In a practical walking process, the angular velocity is several hundred degrees per second, while the gyro-accelerometer asynchronous time is several milliseconds or tens of milliseconds in most cases. So it's reasonable to regard δϑ as a small angle vector, and C b b can be expressed as: C b b ≈ I + (δϑ×). However, if people walk at high speed, such as running, sprinting, etc. The actual gyro outputs are likely to be more than one thousand degrees per second, then δϑ is no longer a small angle vector, but a large angle vector. Therefore, it's necessary to consider the nonlinear errors caused by gyro-accelerometer asynchronous time.
According to [30], the traditional velocity error model is: δv n = (f n − f n ) − (2ω n ie +ω n en ) ×ṽ n + (2ω n ie + ω n en ) × v n + (g n − g n ). Let: Substituting Equations (23), (25), (27) and (28) into Equation (26), the velocity error model can be rewritten as: where:ω n ie = ω n ie + δω n ie ,ω n en = ω n en + δω n en , g n = g n + δg n ,ṽ n = v n + δv n where δg n is the error vector of g n . Equation (29) denotes the velocity error equation of PNS. The position errors can be modeled as: where δR M and δR N are the errors of R M and R N . Since R M >> δL, δλ, δh, and R N >> δL, δλ, δh, Equations (30) and (31) can be rewritten as: Figure 4 presents the details of foot movement in a complete gait cycle, including four stages, named push-off phase, swing phase, hell strike phase, and stance phase [30]. The velocity is approximately equal to zero during the sole of foot touches the ground at the stance phase. Reference [30] presents a zero-velocity detection method named Generalized Likelihood Ratio Test (GLRT) utilizing gyros and accelerometers comprehensively. However, GLRT is utilized under the assumption that there is no gyro-accelerometer asynchronous time. If people walk, especially at high speed, although the gyros measure the angular velocities at the stance phase, the accelerometers measure the specific force before it. Thus, it will lead to missing detection or false detection if gyro-accelerometer asynchronous time is ignored. GLRT performs better when people walk at slow or normal speed. However, if people walk at high speed, the performance of GLRT seems to be not enough. Considering the effect of gyro-accelerometer asynchronous time on zero-velocity detection, this paper proposes a zero-velocity detection method based on the rate of attitude change relying on gyros only, which is applicable under various gaits.

Zero-Velocity Detection
Compared with accelerometers, the gyro sampling signals hold the most reliable information for zero-velocity detection [12]. Therefore, the detection methods utilizing gyros only perform better than the detection methods utilizing accelerometers only. As shown in Figure 4, the pitch angle and roll angle are approximately equal to zero when the sole of foot touches the ground at the stance phase. Due to the low precision of MEMS inertial devices, the attitude errors will increase gradually with time. Therefore, it's difficult to detect the zero-velocity based on attitudes. Since the change of pitch angle or roll angle is reliable in a short term, it's an ideal way to detect the zero-velocity by utilizing the rates of change of pitch angle and roll angle.
Considering that there are installation angle errors when the MIMU is fixed on the foot, it is necessary to compensate for the installation errors in advance. Reference [31] presents a method to calibrate the pitch installation angle error and roll installation angle error by utilizing accelerometers. A self-calibration method of yaw installation angle error is shown as follows.
The installation angle error vector is denoted as φ x , φ y , φ z T . Using the chain rule of Direction Cosine Matrix (DCM) production, C n h can be written as: Rewrite Equation (35) as: where C n m is the transform matrix from m-frame to n-frame, C n h is the transform matrix from h-frame to n-frame, C h m is the transform matrix from m-frame to h-frame. Using the chain rule of DCM production, C n h can be expressed as: where: C h m is related to φ z with the following relationship: Equations (36)-(38) present the calibration method of yaw installation angle error. However, it cannot be calculated if the foot is stationary. So it's required to make MIMU rotate to realize the calculation of φ z . This paper proposes a motion path of self-calibration for the yaw installation angle error, which is shown as follows.
It is assumed that the initial attitude vector is 0 0 ϕ 0 T . When the person is walking along a straight line, the rotation angle vector from m-frame to n-frame is denoted as φ 1 ≈ θ 1 γ 1 ϕ 1 T which represents the actual attitudes of the foot, and the rotation angle vector from h-frame to n-frame is denoted as φ 2 ≈ θ 2 γ 2 ϕ 2 T which can be obtained from: Since the person is walking along a straight line, the change of yaw angle can be regarded as a small angle. It's reasonable to make an approximation that θ 1 ≈ θ 2 , and γ 1 ≈ γ 2 . Then, φ 1 can be expressed as: Therefore, Equation (36) can be rewritten as: (40) Figure 5 presents the attitudes before and after compensating for the installation angle errors. It shows that the attitudes are corrected after compensating for the installation angle errors. The proposed calibration method of installation angle errors improves the recognition and characteristic of gait successfully.   A fixed length sliding window is used, and the increments of pitch angle and roll angle of MIMU in [t k , t k+N ] are denoted as: where N is the fixed length of sliding window. If ∆θ i and ∆γ i are less than the thresholds, it is indicated that the zero-velocity is detected. The judgment can be expressed as follows: where G θ and G γ are the thresholds. If C 1 &C 2 = 1, the zero-velocity is detected. Figure 7 presents the results of zero-velocity detection under different gaits. The zero value of the purple line means that the foot is stationary at that moment, while the non-zero value of the purple line means that the foot is non-stationary at that moment. It shows that the zero-velocity is detected effectively by utilizing the proposed zero-velocity detection method.

Kalman Filter Design
Equation (29) shows that the velocity error model is nonlinear. Therefore, an Extended Kalman Filter (EKF) is utilized to estimate the parameter of gyro-accelerometer asynchronous time in this paper. The integrated framework block diagram of PNS is shown in Figure 8.
The state vector for Kalman filter is: where (δp n ) T = δL δλ δh T is the position error vector, is the bias error vector of gyros, and ( is the bias error vector of and τ have the following relationship: The state transition equation can be expressed as: where f (X) is nonlinear vector function, G is process noise coupling matrixr, W is process noise vector. The measurement equation can be written as: where V is measurement noise vector, Z and H are measurement vector and measurement matrix respectively. In this paper, the height estimation method proposed by Gu et al. is utilized to estimate accurate height measurements for EKF [22]. Therefore, Z and H can be expressed as: where h building is the height measurement calculated by the height estimation method. Discretizing Equations (46) and (47), the state transition equation and measurement equation can be rewritten as: where W k−1 and V k are zero-mean Gaussian white noise vector sequences, both of which are not correlated. The feedback compensation of EKF can be expressed as:

Experiments and Analysis
The experiment was conducted in a building in Jimei District, Xiamen. As shown in Figure 9, to collect the data, the MIMU was fixed on the instep of the right foot. Then the experimenter walked on a designed trajectory that contains different gaits, including walking on flat ground, going upstairs, and going downstairs. While the experimenter was walking indoor, the MIMU sent the gyro outputs and accelerometer outputs to the Bluetooth receiver connected to a PC through the Bluetooth transmitter. In this experiment, a self-designed MIMU which contains three gyros and three accelerometers with large ranges is used. The performance of the MIMU is shown in Table 3.

Performance Gyros Accelerometers
In-run stability The experimental environment is shown in Figure 10. The designed trajectory can be summarized as follows: The experimenter went up to the third floor from P 0 , and took a walk around the hall counterclockwise to reach P 1 . Then the experimenter went up to the fourth floor, and took a walk around the hall clockwise to reach P 2 . Finally, the experimenter went down to the third floor, and took a walk around the hall counterclockwise to reach P 3 . The total travelled distance is about 300 m. After data collection is completed, the gyro sampling signals and accelerometer sampling signals are compared offline. The estimation of gyro-accelerometer asynchronous time is about 10 ms. A method named interpolation is utilized to compensate for the errors caused by gyro-accelerometer asynchronous time then. The error curves are drawn in Figure 11, by comparing the compensated velocity (position) with the uncompensated velocity (position). Figure 11 shows that the characteristics of velocity errors and position errors caused by gyro-accelerometer asynchronous time meet the results described in Tables 1 and 2. It further proves the correctness of the above analyses. Reference [32] presents the ZUPT algorithm and the height constraint algorithm, both of which show excellent performance in PNS. To evaluate the performance of the proposed calibration method, four methods are designed in this paper. Method 1 utilizes the ZUPT algorithm with gyro-accelerometer asynchronous ignored. Method 3 utilizes the ZUPT algorithm and the height constraint algorithm with gyro-accelerometer asynchronous ignored. Method 2 and method 4 are designed to verify the effectiveness and feasibility of the proposed calibration method by comparing the positioning accuracy with method 1 and method 3. The designed methods are shown in Table 4 in detail. ZUPT/height constraint with gyro-accelerometer asynchronous time considered Figure 12 presents the estimations of gyro-accelerometer asynchronous time with method 2 and method 4. Since method 1 and method 3 do not consider the gyro-accelerometer asynchronous time, the information about method 1 or method 3 is not presented in Figure 12. It shows that the estimation of gyro-accelerometer asynchronous time with method 2 is about 8.92 ms, and the estimation of gyro-accelerometer asynchronous time with method 4 is about 8.31 ms. These results are very close to the offline calculated estimation. Moreover, Figure 12 also shows that the curves are convergent after about 60 s due to the complex movement of MIMU driven by foot, indicating that the gyro-accelerometer asynchronous time can be inspired in a relatively short time. Figure 13 presents the calculated trajectories with method 1 and method 2, and Figure 14 presents the calculated trajectories with method 3 and method 4. Figure 13a shows that the height error with method 1 is positive while the height error with method 2 is negative. Further analysis shows that the height error with method 2 is affected by the low precision of MEMS inertial devices and the computational errors of inertial navigation algorithm, while the height error with method 1 is also affected by the gyro-accelerometer asynchronous time. Therefore, the height errors with method 1 and method 2 are opposite. Figure 13b shows that the calculated trajectory with method 2 is more consistent with the real trajectory than the calculated trajectory with method 1. In addition, as shown in Figure 14, compared with the calculated trajectories with method 1 and method 2, method 3 and method 4 have a higher positioning accuracy. The height constraint algorithm makes it possible to confirm exactly which floor the experimenter is on. In order to further verify the effectiveness of the proposed calibration method, the positioning errors are compared. Figure 15 presents the position curves by four methods respectively. Figure 16 19.57% and 18.99% respectively. Therefore, the results prove that the horizontal positioning accuracy is improved after compensating for the errors caused by gyro-accelerometer asynchronous time. Further analysis shows that the velocity errors are only corrected at the stance phase by using the ZUPT algorithm. Since the zero-velocity interval accounts for a small part of a complete gait cycle, the velocity errors and position errors will be accumulated continuously. Although the horizontal velocity errors caused by gyro-accelerometer asynchronous time will cancel each other out partly on a closed-loop trajectory, the complex movement of foot will still lead to the drift of velocity. Therefore, the horizontal positioning accuracy can be improved by compensating for the errors caused by gyro-accelerometer asynchronous time.
Besides, compared with method 1, the vertical positioning accuracy with method 2 increases by 0.27 m, 1.12 m and 1.26 m respectively at P 0 , P 1 and P 2 , indicating that the proposed calibration method can effectively compensate for the height error caused by gyro-accelerometer asynchronous time when using the ZUPT algorithm. However, the improvement of vertical positioning accuracy with method 4 is limited, due to the effective correction of height when using the height constraint algorithm.

Discussion and Conclusions
The experimental results show that the gyro-accelerometer asynchronous time can be estimated in a short time due to the high-dynamic environments. The proposed calibration method performs well in estimating the parameter of gyro-accelerometer asynchronous time. The positioning accuracy can be improved effectively after compensating for the errors caused by gyro-accelerometer asynchronous time. Since the position errors caused by gyro-accelerometer asynchronous time will be accumulated over time, the proposed calibration method contributes to improving the stability of PNS in a long time.
In the foot-mounted pedestrian navigation system with MIMU or mobile phone as the main carrier, the difference of phase-frequency characteristics between gyros and accelerometers will lead to the asynchronization of sampling time, resulting in the accumulation of velocity errors and position errors. To solve this problem, in this paper, an error model of gyro-accelerometer asynchronous time is built. The effect of gyro-accelerometer asynchronous time on pedestrian navigation and the main characteristics of velocity errors under different motions are analyzed. A filtering model is designed to calibrate the gyroaccelerometer asynchronous time via a Kalman filter. To avoid the missing detection and false detection, a zero-velocity detection method based on the rate of attitude change is proposed. The results of the 300 m-long experiment show that the gyro-accelerometer asynchronous time is estimated effectively and the positioning accuracy is improved after compensating for the errors caused by gyro-accelerometer asynchronous time. Furthermore, the gyro-accelerometer asynchronous time is caused by hardware, while the proposed method reduces the negative effect of gyro-accelerometer asynchronous time by software. Therefore, for the MIMUs with gyro-accelerometer asynchronous time, the proposed method makes it possible to apply them in PNS, which reduces the cost of pedestrian navigation and improves the reliability of MIMUs or mobile phones in PNS. Therefore, it can be concluded that the proposed calibration method works well in the foot-mounted pedestrian navigation system, and the study of gyro-accelerometer asynchronous time provides a new way to improve the positioning accuracy of pedestrian navigation in an indoor GNSS-denied environment.

Conflicts of Interest:
The authors declare no conflict of interest.